THE DERIVE - NEWSLETTER #66
ISSN 1990-7079
THE BULLETIN OF THE
USER GROUP
Contents:
1 Letter of the Editor
2 Editorial - Preview
3 User Forum with among others
A Useful Tipp for Sums and Products
Power of a Matrix (p 3)
Schorn's Challenge (p 38)
Strange Derivatives on the TI-Devices (p 41)
Hubert Weller
6 Mathematics and Design
Wolfgang Propper
2 2 Step Functions and Riemann's Concept of Integration
Maren van Kessel
28 Morphing with DERIVE
G P Speck
29 Challenger Matrix Problems
Josef Bohm
44 Surfaces from the Newspaper
June 2007
D
-N-L#66
Information
D-N-L#66
GREAT NEWS: Calculus Made Easy version 9.0 is now available.
Calculus Made Easy v9.0 has become the ultimate educational tool to study Calculus.
View the slide shows at www.ti89.com to view step by step solutions in all areas of
Calculus.
What is new in v9.0?
1 ) Step by Step Limits
2) Step by Step Differential Equations
3) Step by Step Implicit Differentiation
4) Step by Step Sequences and Series / Convergence Intervals
5) Step by Step Area Approximation
6) Step by Step Partial Fractions and Trig Substitution
7) Step by Step Synthetic Division and Composition of Functions & much more
No other software covers Calculus I (Calc AB) , II (Calc BC) , III (multivariable), Dif-
ferential Equations, Vector Calculus and Differential Geometry!!
Jetzt auch auf deutsch: http://www.ti89.com/store eur.htm
Product information at: www.ti89.com/documentation.htm .
To Upgrade: Simply click on <Upgrade> at www.ti89.com/store.htm .
Contact: support@ti89.com
At the CAME5-conference which was held in Pecs, Hungary, I met Prof. Andras Ringlerfrom
the University of Szeged. He found a beautiful geometric solution of quadratic equations.
Your are invited to follow his ideas.
Goto: www.mozaik.info.hu/homepaqe/mozaportal/Matematika.php
To activate the program click on the icon Gondolkozzunk "gorogiil", then Megnyitas, then
Ringler Andras G ..., and finally GEOMexe.
If you are looking for an exciting application of matrix calculation in connection with eigenvec-
tors which is attractive for students, then download
"An Illustrated Guide to the ANALYTIC HIERARCHY PROCESS"
presented by Dr. Rainer Haas and Dr. Oliver Meixner from the University of Natural Re-
sources and Applied Life Sciences, Vienna.
http://www.boku.ac.at/mi/ahptutorial.pdf
D-N-L#66
LZTTZK Of TUZ ZVITGK
Liebe DUG-Mitglieder,
Mitten im Sommer kann ich Ihnen den DNL#66
vorlegen. Ich wollte eigentlich mehr Beitrage in
diesen DNL aufnehmen, aber, wie Sie selbst sehen
konnen, machen drei Artikel gemeinsam mit dem
Userforum einen vollen DNL aus.
Hubert Weller stellt wieder einmal die Bezier Kur-
ven in den Mittelpunkt seines Aufsatzes. Diese
Kurven sind schon ofters im DNL behandelt wor-
den. Dennoch sind sie immer wieder interessant,
stellen sie doch eine so schone Verbindung zwi-
schen Vektorrechung, Parameterdarstellung von
Kurven, dynamischer Geometrie und modernem
Design in der Ebene und im Raum dar.
Wolfgang Propper zeigt in seinem Beitrag zur In-
tegration einerseits die Moglichkeiten des TI-
NSpire zur Verbindung verschiedener Darstel-
lungsformen von mathematischen Inhalten und
andererseits eine interessante Moglichkeit, Trep-
penfunktionen zur Definition von Riemannsummen
zu erstellen.
Ich lade bei dieser Gelegenheit alle ein, die sich
bereits mit dem TI-NSpire beschaftigt haben, iiber
ihre Erfahrungen zu berichten.
Vom schonsten Ende der Welt, von Neuseeland,
hat mir G P Speck einen Artikel geschickt, der eine
feine Fortsetzung zu den Sudoku-Beitragen von
Johann Wiesenbauer bildet. Die Challenger-
Probleme sind eine reizvolle Art von Denksport-
aufgaben. G P Speck lost sie mit Derive und ver-
wendet eine interessante Verkniipfung von Text-
anweisungen und auszufiihrenden DERIVE-
Kommandos.
Die letzte Seite gilt den von mir im letzten DNL
angesprochenen Flachen, die in einer renommierten
deutschen Zeitung auf einer Doppelseite aufgelistet
und abgebildet worden sind. Hoffentlich fmden Sie
die Gegeniiberstellung der verschiedenen Darstel-
lungen auch so reizvoll wie ich.
Wenn sie aufmerksam die Liste der unveroffent-
lichten Beitrage lesen, werden sie merken, dass drei
Titel entfernt wurden - der Inhalt dieses DNL -
aber schon wieder vier neue hinzugekommen sind.
Die Aktivitat der DUG-Mitglieder ist wirklich
erfreulich. Herzlichen Dank dafiir.
AbschlieBend mochte ich Sie auf die Info-Seite
hinweisen und verbleibe mit den besten Wunschen
far einen schonen Sommer
Dear DUG Members,
It is midsummer and I have the pleasure to offer
DNL#66. I intended to include more contributions
but as you can see, three extended articles together
with the User Forum make the DNL full.
Hubert Weller treats once more the Bezier Curves
in his paper. These curves appeared earlier in the
DNL. However, they are always interesting form-
ing a fine connection between calculation with
vectors, parameter representation of curves, dy-
namic geometry and modem design in plane and
space.
Wolfgang Propper shows in his article on one hand
the possibilities of linking various representation
forms of mathematical contents with TI-NSpire and
on the other hand an interesting way for creating
stepfunctions to define Riemann sums.
At this occasion Ld like to invite all of you who
have worked with the TI-NSpire to report about
their experiences.
G P Speck sent an article from the "most beautiful
end of the world", New Zealand, which is a fine
sequel to Johann Wiesenbauer 's findings on Sudo-
kus. The Challenger problems are nice brain-
twisters. G P Speck solves them supported by De-
rive and uses an interesting combination of instruc-
tions to read and Derive commands to execute
within the Derive file.
The last page is dedicated to the surfaces which I
mentioned in the last DNL. They were listed and
shown in a renowned german newspaper. I hope
that you will find the comparison of the various
representations as inspiring as I do.
Reading carfully the list of unpublished contribu-
tions you will note, that three topics have been
removed - contents of this DNL - but four new
ones have been included. The activity of the DUG-
members is really impressive. Many thanks for that.
Finally Ld like to draw your attention to the infor-
mation page und remain with best wishes for an
enjoyable summer
Sincerely yours
Ihr
Download all DNL-Derive- and Tl-files from
http: / /www.austromath.at/dug/
http : //www . bk- teachware . com/ main . asp?session=37 505 9
EDITORIAL
D-N-L#66
P 2
I
The DERIVE-NEWSLETTER is the Bulletin
of the DERIVE & CAS- 77 User Group. It is
published at least four times a year with a
contents of 40 pages minimum. The goals
of the DNL are to enable the exchange of
experiences made with DERIVE, 77-CAS
and other CAS as well to create a group to
discuss the possibilities of new methodical
and didactical manners in teaching mathe-
matics.
Editor: Mag. Josef Bohm
D'Lust 1, A-3042 Wurmla
Austria
Phone/FAX: 43-(0)2275/8207
e-mail: nojo.boehm@pgv.at
Contributions:
Please send all contributions to the Editor.
Non-English speakers are encouraged to
write their contributions in English to rein-
force the international touch of the DNL. It
must be said, though, that non-English arti-
cles will be warmly welcomed nonetheless.
Your contributions will be edited but not
assessed. By submitting articles the author
gives his consent for reprinting it in the
DNL. The more contributions you will
send, the more lively and richer in contents
the DERIVE & CAS-77 Newsletter will be.
Next issue: September 2007
Deadline 15 August 2007
Preview: Contributions waiting to be published
Some simulations of Random Experiments, J. Bohm, AUT, Lorenz Kopp, GER
Wonderful World of Pedal Curves, J. Bohm
Another Task for End Examination, J. Lechner, AUT
Tools for 3D-Problems, P. Luke-Rosendahl, GER
ANOVA with DERIVE & Tl, M. R. Phillips, USA
Financial Mathematics 4, M. R. Phillips
Hill-Encription, J. Bohm
Farey Sequences on the Tl, M. Lesmes-Acosta, COL
Simulating a Graphing Calculator in DERIVE, J. Bohm
Henon & Co, J. Bohm
Are all Bodies falling equally fast, J. Lechner
Do you know this? Cabri & CAS on PC and Handheld, W. Wegscheider, AUT
An Interesting Problem with a Triangle, Steiner Point, P. Luke-Rosendahl, GER
Overcoming Branch & Bound by Simulation, J. Bohm, AUT
Diophantine Polynomials, D. E. McDougall, Canada
Graphics World, Currency Change, P. Charland, CAN
Precise Recurring Decimal Notation, P. Schofield, UK
Problems solved using the Tl-Nspire, K. Stulens, BEL
Cubics, Quartics - interesting features, T. Koller & J. Bohm
Logos of Companies as an Inspiration for Math Teaching
Exciting Surfaces in the FAZ
Centroid of a Triangle - Recursively, D. Sjostrand, SWE
BooleanPlots.mth, P. Schofield, UK
What is hiding in Dr. Pest? B. Grabinger, GER
Truth Tables on the Tl, M. R. Phillips
Advanced Regression Routines for the TIs, M. R. Phillips
Directing Our Suspicions with AHP, C. Leinbach, USA
Embroidery Patters, H. Ludwig, GER
and Setif, FRA; Vermeylen, BEL; Leinbach, USA; Baumann, GER; Keunecke, GER,
and others
Impressum:
Medieninhaber: DERIVE User Group, A-3042 Wurmla, D'Lust 1, AUSTRIA
Richtung: Fachzeitschrift
Herausgeber: Mag. Josef Bohm
Derive - and CAS-TI-User Forum
D-N-L#66
P 4
Johann Wiesenbauer, Vienna
Hi Michael,
No offence meant, but isn't it a little "blue-eyed" to assume that Derive could give a general expression
of A n for a any matrix A? At least, that's what I would say if one my students tried to input such an
expression. What Derive really does you could see in the following example
2 3 5
#3: U := 7 II 13
. 17 15 23
n n n
2 3 5
n n n n
#4 : U = 7 11 13
n n n
.17 15 23
In short, it computes the matrix of n-th powers, which is usually not the n-th power of the matrix U.
Even though this feature might be occasionally useful, hence I prefer it to letting U n unsimplified.
Cheers,
Johann
Michael Saake
Thanks Johann,
I think, I understand now not to see this as a bug, but as an intentional different definition of "Matrix-
Powers". I could deal with it ...
But to get some of this "blue-eyed" students, that we might have to deal with, in a useful discussion
using their own mind to argue about the limits of CAS-Computing, I found it so long very helpful
when DERIVE does sometimes nothing (i.e. A n remains A n ) instead of DERIVE does something
which is not compatible with that, what I assume DERIVE will do.
So long
Michael
Johann Wiesenbauer
Hello Michael,
There is one more argument that might convince you that the current definition of A n for a matrix A,
where n is a variable and not a number, is quite useful sometimes. For this you have to replace the
"blue-eyed" student in my previous example by a very clever one. He knows that by using a matrix T,
whose columns are eigenvectors of A, it might be possible to get a diagonal matrix D, defined by
D= T" 1 A T. Now for D this "Derive-exponentiation" with a general n is valid. Hence, A n = T D n T" 1 .
If the student is good at programming in Derive as well, he might even write a small program that does
all those steps automatically. What do you think of it?
Cheers,
Johann
D-N-L#66
Derive- and CAS-TI-User Forum
P 5
Michael Saake
Hello Johann,
Eve just applied it to my earlier example A=[0.5,-0.5 ; 0.5, 0.5] and got what I like to get:
A n = TD^T 1 = [?, ?; ?, ?]
But we use DERIVE at high-school-level as an educational tool or calculus servant.
Thanks
Michael
Johann Wiesenbauer
Hello Michael,
Ok, in the meantime I had a go at it myself, and you are right, things are slightly more complicated
when writing a program. In particular, you have to specify n, as can be seen in the program below:
nfiypower(a, t_) :=
Pnog
t_ := APPENDCVECTOR(EX^CT_EIGENVECTORCa l O’. e_, EIGENVALUES(a))) 1
#1: n :e Integer [0, ■»)
a := t_ A (-l)-a-t_
t_- a A n- t_ A (-l)
- n/2 C TT-n ^ - n/2
2 -COS 2 -SIN
' 0.5 0.5 1 L 4 J
#2 : mypower =
. -0.5 0.5 J - n/2 ( n-n ") - n/2
- 2 -SIN 2 -COS
4 J
Note that I wrote this program only for the matrix at issue, i.e. for didactical purposes, as the existence
of a basis consisting of orthogonal eigenvectors is not always garanteed (it is though, if A commutes
with A\ as in your case) and even if it exists, it is very hard or impossible for bigger matrices to com-
pute the exact eigenvalues. This may also be the main reason, why this routine is not implemented in
Derive.
Cheers,
Johann
Michael Saake
Thanks, Johann,
I think you made it perfectly clear why to handle matrix powers carefully using CAS. IT1 further point
it out to students exploring maths with DERIVE.
Michael
Danny Ross Lunsford
There should definitely be an intrinsic function to compute A n and exp(A) for general matrices. These
things are absolutely fundamental. The TI92+ can exponentiate matrices and I wish Derive had that
capability. I use Derive for quick and dirty calculations with the Clifford algebras that appear in field
theory - similarity transformations come up all the time.
-drl
to be continued on page 44
P 6
Hubert Weller: Mathematics and Design
D-N-L#66
Mathematik und Design? - de Casteljau-Algorithmus,
Bezier-Kurven und Flachen im Raum
Hubert Weller, Lahnau, hubert.weller@schule.uni-giessen.de
1. Mathematik und Design - Problemstellung und historische Anmerkungen
Die heutige Entwicklung in vielen Teilen der Wirtschaft ist ohne den (massiven) Einsatz
von Computern nicht mehr denkbar. Diese Entwicklung hat erst um 1960 begonnen. Da-
bei hat auf der einen Seite die Mathematik den Einsatz der Computer erst ermoglicht, auf
der anderen Seite hat aber der Wunsch, den Computer bei der Schaffung und Herstellung
neuer Formen zu nutzen, die Entwicklung vollig neuer mathematischer Methoden erfor-
derlich gemacht. Um mathematische Methoden im Zusammenhang mit der Beschreibung
geometrischer Formen geht es in diesem Beitrag.
Ein Designer hat Visionen! Er entwirft eine Form z.B. indem er auf dem Papier einen Ent-
wurf anfertigt, der dann realisiert werden soil. Die Techniker und Ingenieure stehen vor
dem Problem, die Form so herzustellen, dass sie jederzeit reproduziert und beliebig oft
kopiert werden kann. Noch bis 1960 wurde ein so genanntes „master model" hergestellt
und benutzt. Dies hatte aber viele Nachteile:
• die Vorlage nutzt sich ab,
• sie ist schlecht zu transportieren,
• die Reproduktion ist ungenau, ....
Zusatzlich war durch die Fortschritte im CNC-Bereich der Wunsch entstanden, diese For-
men mit mathematischen Mitteln zu beschreiben, damit durch die numerischen Daten die
computergesteuerten Maschinen bei der Produktion eingesetzt werden konnten. Ganz
vereinfacht lasst sich das Problem so beschreiben:
Ein Designer entwirft eine Kurve, die wir mathematisch beschrei-
ben sol ten i, so dass sie im PC bearbeitet werden kann.
Dass dies mit den uns bekannten Methoden nicht so einfach ist, kann sich jeder sofort
vorstellen!
The artist designs a form, which should be described mathematically in order to
work with it on the PC and later on in a computer controlled production process.
One can imagine that this is not so easy to do applying the methods which are
wellknown to the students.
D
-N-L#66
Hubert Weller: Mathematics and Design
P7
Besser ware es, wenn wir dem Designer ein Werkzeug zur Verfugung stellen
konnen, das es ihm erlaubt, solche Kurven am Computer zu entwerfen (ohne
die Mathematik verstehen zu miissen) und deren Verlauf wir durch wenige Da-
ten reproduzieren konnen.
Au fgabenstel lung:
Konstruiere ein Werkzeug, mit dem am Computer schone Kurven erzeugt
werden konnen, die man dann durch wenige Daten algebraisch (und da-
rn it a uch numerisch) beschreiben kann.
Problem:
Develop a tool for creating beautiful curves on the PC which can be de-
fined algebraically (and subsequently numerically) by only a few data.
An der Losung dieses Problems wurde um 1960 sowohl in der amerikanischen Flugzeug-
industrie als auch unabhangig voneinander in der franzosischen Automobilindustrie bei
Citroen und Renault gearbeitet.
P.de Casteljau (1959) bei Citroen und P. Bezier
(1961) bei Renault entwickelten unter stron-
ger Geheimhaltung durch die Firmen die not-
wendige Theorie. Da die Arbeiten von de
Casteljau nicht verbffentlicht wurden, werden
die Kurven heute als Bezierkurven bezeichnet.
Der geometrische Konstruktionsalgorithmus
ist nach de Casteljau benannt.
Heutzutage haben wir die Moglichkeit, mit Dynamischer Geometrie Software (CABRI) den
de-Casteljau-Algorithmus nachzuvollziehen und damit das Werkzeug fur den Designer
selbst herzustellen. Dartiber hinaus haben wir mit einem Computer-Algebra-System
(DERIVE) ein Werkzeug zur Beschreibung, Darstellung und Erzeugung der Kurven und
Flachen im Raum.
P.de Casteljeau (Citroen, 1959) and P. Bezier (Renault, 1961) developed the theory.
Nowadays we can reproduce the algorithm using Dynamic Geometry (CABRI) and de-
scribe the resulting curves using any CAS (DERIVE).
2. De Casteljaus Algorithmus - Der geometrische Zugang
(1/1/e show the procedure using the excellent DGS-program CABRI. In the appendix you
can find some screen shots using the pre-release version of GeoGebra. Josef)
Wir konstruieren zunachst eine Strecke A0A1
und einen Punkt BO auf der Strecke.
Dieser lasst sich im Zugmodus auf der Strecke
verschieben.
We define segment A0A1 with point BO on it.
BO can be moved on the segment.
•AO
P 8 Hubert Weller: Mathematics and Design D-N-L#66
Im Punkt A1 wird eine weitere Strecke A1A2
gezeichnet. Auf dieser Strecke soil ein Punkt B1
konstruiert werden, der die Strecke A1A2 im
selben Verhaltnis teilt wie der Punkt BO die
Strecke A0A1.
/bo \ — ;;=■
Dazu erinnern wir uns an den Strahlensatz und
beachten, dass noch an der Mittelsenkrechten
\ B1
(am Mittelpunkt von A1A2) gespiegelt werden
muss, damit B1 in der Nahe von A2 ist, wenn
BO in der Nahe von A1 ist.
Wir „verstecken" alle bei der Konstruktion be-
nutzten Hilfslinien und -punkte.
"•A!--
We add segment A1A2 and transfer
the ratio A0A1/A0B0 (incuding a refle-
ction wrt the perpendiuiar bisector) in
order to obtain point Bl . Then we hide
the auxiliary objects.
Im Zugmodus kann BO auf der Strecke ver-
schoben werden - B1 bewegt sich entspre-
chend mit.
/\ A1
Auch AO, A1 und A2 sind frei gewahlte Punkte -
sie konnen mit der Maus beliebig verandert
BO \
werden.
Die ganze Konstruktion definieren wir als ein
\ B1
# A0 \
**o
Makro:
A£
Startobjekte sind AO , A1 , BO und A2.
Zielobjekt ist Bl.
AO, Al and A2 are free moveable.
Moving point BO results in a simulta-
neous movement of Bl.
Als Makronamen benutzen wir ratiol (Spei-
chern nicht vergessen.)
We define the whole contruction as a
macro with AO, Al, BO and A2 as
initial objects and Bl as final object.
We name the macro ratiol. Don 't
forget to save the macro.
Das Makro ratiol wird jetzt benutzt, um auf
Al Bl
/ — \ AZ
der Strecke A2A3 den Punkt B2 zu konstruie-
ren.
/bo \
Dabei mussen die Startobjekte in der richtigen
Reihenfolge angeklickt werden:
/ \ BZ
<A0 \
Al, A2 , Bl , A3 und schon ist der Punkt B2
*A3
konstruiert.
Applying ratiol we produce point B2
on the attached segment A2A3. Take
care to click on the the initial objects
in the right order: Al, A2, Bl, A3 -
and here we are: point B2 appears.
Nun sollen auch auf den Strecken B0B1 und
B1B2 die entsprechenden Teilungspunkte kon-
struiert werden. Dazu benotigen wir ein weite-
res Makro ratio2, das den Teilungspunkt kon-
struiert, wenn die Strecken nicht „aneinander-
hangen".
Wir nutzen dabei das letzte Bild - Startobjekte
AO, Al, BO, A2, A3 Zielobjekt B2
In the next step we draw the
segments B0B1 and B1B2 and find the
division points CO and Cl .
To do so we need another macro
ratio2, which transfers the ratio on
segments which are not attached.
Initial objects are AO, Al, BO, A2, A3
and final object is B2.
D
-N-L#66
Hubert Weller: Mathematics and Design
P 9
Auf diese Art konstruieren wir die Teilungs-
punkte B2 , CO , Cl und schliesslich Y.
Wenn wir an BO ziehen, verandert sich die gan-
ze Konstruktion!!
Unser Augenmerk gilt dem Punkt Y.
Moving BO results in a general movement of
the whole figure.
A1 B1
We have special interest in point Y.
Auf welcher Kurve bewegt sich der Punkt Y,
wenn der Punkt BO auf der Strecke A0A1 be-
wegt wird?
Diese Ortskurve lassen wir uns von CABRI
einzeichnen und verstecken alle bei der Kon-
struktion benutzten Objekte.
Which is the locus of Y when moving BO on
segment A0A1 ? We hide ail auxiliary objects.
Nur die Punkte AO, Al, A2, A3 sind fur die Form
dieser Kurve verantwortlich.
Zu guter Letzt definieren wir das Makro cubbez
mit den Startobjekten AO, Al, A2, A3 und der
Ortskurve als Zielobjekt.
Al
Only points AO, Al, A2 and A3 are responsible
for the shape of this curve.
Finally we define the macro cubbez with initial
objects AO, Al, A2, A3 and the locus being the
final object.
Bis hierher haben wir schon - CABRI sei Dank - ein schones Stuck Arbeit geleistet!
Wir haben dem Designer ein Werkzeug zur Verfugung gestellt, mit dem er schone Kurven
erzeugen kann - mit den mathematischen Grundlagen muss er sich nicht mehr
auseinandersetzen. Wir erklaren ihm, wie er das Werkzeug zu bedienen hat und schon
kann er schone Formen schaffen!
Thanks CABRI we did a good job. We have
provided a tool for the designer which he
or she can use for creating pretty curves
without dealing with the mathematics.
We explain how to use the tool and he/she
can work according to their creativity.
pio
Hubert Weller: Mathematics and Design
D-N-L#66
Aber wie kommen wir weiter?
Eigentlich mochten wir doch die Kurven auch mit Hilfe von Formeln beschreiben, damit
wir genugend viele genaue numerische Daten beschaffen konnen. Wenn wir diese haben,
konnen die Formen mit CNC-Maschinen hergestellt und beliebig oft kopiert werden.
Ausserdem konnten wir die Daten zum Beispiel auf einer Diskette, einer CD Oder via
Internet an einen anderen Ort transportieren.
But how to proceed?
We would like to describe these curves by formulae in order to get arbitrary many
accurate numerical data. Then we can use CNC-automatic machines to produce the
shapes and copy them. Moreover the data can be stored an a diskette or CD and/or
transmitted easily by Internet. We will focus on this problem now.
Mit diesem Problem wollen wir uns jetzt beschaftigen.
3. Die algebraische Beschreibung The algebraical description
(Ein Happchen Vektorrechnung)
Erinnern wir uns an unsere Ausgangssituation:
Der Punkt BO liegt auf der Strecke A0A1, das konnen wir so
aufschreiben:
BO = AO + t (Al - AO)
BO = AO + t-Al - t-AO
BO = (1 — t) AO + t-Al (dabei ist 0 < t < 1)
Auf Grund unserer Konstruktion gilt die-
se Gleichung auch bei den anderen
Punkten:
B1 = (l-t)Al+t-A2
B2 = (l-t)A2+t-A3
und
CO = (l-t)B0+tBl
Cl = (l-t)Bl+t-B2
und schlieBlich
Y = (l-t)C0+t-Cl
Durch Einsetzen und Umstellen der Formeln ergibt sich:
Das sind die kubischen Bezierkurven.
Substitution and rearranging leads to the sum-expression given in the box. These are
Cubic Bezier Curves. We can do the manipulation by hand or leave it to DERIVE.
D
-N-L#66
Hubert Weller: Mathematics and Design
pll
#1: [AO :=, A1 :=, A2 :=, A3 :=]
#2: [BO := (1 - t)-A0 + t-Al, B1 := [1 - t)-Al + t-A2, B2 := (1 - t)-A2 + t-A3]
#3: [CO := (1 - t)-B0 + t-Bl, Cl := [1 - t)-Bl + t-B2]
#4: Y := (1 - t)-C0 + t-Cl
3 2
#5: Y := A0-(1 - t) + t- (3-A1- (t - 1) - t ■ (3 ■ A2 ■ (t - 1) - A3-t))
Applying Expand on Subexpressions leads to:
3 2 2
#6: Y := A0-C1 - t) + O-Al-t-Ct - 1) - t .0-A2.(t - 1) - A3-t))
3 2 2 3
#7: Y := A0-C1 - t) + O-Al-t-Ct - 1) - C3-A2.t ■ (t - 1) - A3-t ))
which is equal to
#S:
AO- Cl - t) + 3-Al.t-Ct - 1]
■A2.t -Ct - 1) + A3 ■ t
Bei der Darstellung der Bezierkurven werden die sogenannten Bernsteinpolynome
K{t) =
\k)
■(i-O
n-k
(*)
mit den Gewichtungsfaktoren Ak multipliziert und addiert. Diese Polynome hat der Ma-
thematiker S.N. Bernstein im Jahr 1911 fur einen konstruktiven Beweis des Wei-
erstraBschen Approximationssatzes eingefuhrt.
For presentation of Bezier Curves the so called Bernstein Polynomials (*) are multi-
plied by weight factors Ak and added. S.N. Bernstein introduced these polynomials 1911
for a constructive proof of the WeierstraB Approximation Theorem.
Wir wahlen z.B. n = 5 und lassen alle 6
Bernsteinpolynome zeichnen.
Welche Eigenschaften haben sie?
Wo liegen die Extremwerte?
We choose n=5 and plot all of the six
Bernstein polynomials.
What do they have in common?
Find the locus of the extremal points!
Hint: If you cannot find the locus, then
open the file bernstein.dfw.
Die Herleitung der Ortslinie der Extremwerte finden Sie in bernstein.dfw.
Pl2
Hubert Weller: Mathematics and Design
D-N-L#66
Die oben definierten Bezierkurven konnen mit Derive direkt gezeichnet werden. Wir mus-
sen nur die Koordinaten der 4 Punkte kennen (diese lesen wir aus der CABRI-Zeichnung
ab).
3 2 2 3
#9: cub_bez(p0, pi, p2, p3, t) := p0.(l - t) + 3- pl.t, (t - 1) - 3-p2-t ■ (t - 1) + p3-t
#10: [AO := [-1, 2], A1 := [3, 5], A2 := [7, 4], A3 := [9, -2]]
#11: Y(t) := cub_bez(A0, Al, A2, A3)
T 3 3 2 1
#12: YCt) := L - 2 ■ t + 12-t - 1, - t -12-t + 9-t + 2j
4. Bezierkurven im Raum Bezier Curves in Space
Die bis jetzt erworbenen Erkenntnisse fur die 2D-Grafik ubertragen wir nun auf den
Raum. Wir wahlen 4 Punkte und zeichnen den Streckenzug in der 3D-Grafik. Danach
definieren wir unsere Bezierkurve wie im 2-dimensionalen Fall und lassen diese zeichnen:
We transfer all the knowledge acquired so far into space. We choose 4 points, draw the
segments, define the space curve using the function which we have just defined and plot
the curve. Don 't forget to set the domain for the parameter from 0 to 1 (via Insert >
Plot)
Bezier Cutves in Space
#13: [SO := [4, 0, 5], SI := [0, 7, 0], S2 := [3, 2, 9], S3 := [-2, 0, 2]]
" SO "
SI
#14:
[SO, SI, S2 , S3],
S2
_ S3 _
#1 5 results in the space curve and #1 7 results in the space curve plotted as a thick line
(Insert > Plot > Point Size Small or Medium)
#15:
cub_bez(S0, SI, S2,
S3)
r 3
2
3 2 1
#16:
L - 15- t
+ 21 ■ t -
12-t + 4, 3-t-(t - 1) ■ (5 ■ t - 7), - 30. t + 42- t - 15-t + 5j
#17: (TABLE ([[cub_bez (SO, SI, S2, S3)]], t, 0, 1, 0.002))u2
5. Die Idee der HP-Flachen zur Erzeugung schoner Flachen
The concept of HP-Surfaces for designing beautiful surfaces
Wenn in einem Wiirfel die Punkte gegenuberliegender
Diagonalen so wie in den Bildern dargestellt durch Geraden
verbunden werden, dann entsteht eine Sattelflache - das
gegensinnig gekriimmte Hyperboloid (die HP-Flache).
Diese Flachen lassen sich im 3D-Fenster von Derive
ganz einfach darstellen, wenn man den Erzeugungs-
prozess zur Beschreibung mit einer Formel nutzt.
These surfaces are very easy to define and to present as well with DERIVE. We define
the vertices of the cube, create the sequences of points on the two diagonals of opposite
sides of the cube and find then the connecting segments of respective points of these
diagonals:
The HP-Surface
#18: [a := [2, 0, 0]
#19: [e := [2, 0, 2]
b := [2,
2, 0],
□
1 1
1 1
U
f := [2,
2, 2],
□
i i
1 1
ijl
2, 0], d := [0, 0, 0]]
2, 2], h := [0, 0, 2]]
# 20 :
The points on the opposite diagonals:
#21: p(t) := e + t-(d - e)
#22: q(t) := b + - b)
The point on the surface = parameter representation (0 < t , s < l)
#23: hp(t , s) := pOO + s-(qCt) - p(t))
#24: hpCt , s) := [2 - 2-t, 2-s, 2.s.(2-t - 1) - 2-t + 2]
pl4
Hubert Weller: Mathematics and Design
D-N-L#66
Diese Flachen spielen in der Architektur bei der
Gestaltung von ungewohnlichen Dachflachen eine
Rolle, da sie durch eine Schalung mit geraden
Brettern in Stahlbetonbauweise leicht zu realisie-
ren sind.
These surfaces play an important role in architec-
ture for designing unusual roofs, because they are
easy to realise in an armored concrete construction
using straight logs for the encasing.
Wir wollen nun die Idee der Erzeugung
einer HP-Flache erweitern, indem wir
P(t) und Q(t) nicht mehr auf Strecken,
sondern auf Bezierkurven im Raum be-
wegen.
We will extend the idea of creating a
HP-surface by moving P(t) and Q(t) not
on straight lines but on Bezier curves in
3D space.
Let's design two "beautiful" boundary
curves with the DGS.
Diese transportieren wir in den Raum, indem wir die Koordinaten der Steuerpunkte als x-
und z-Koordinaten verwenden. AO bis A3 setzen wir an die Stelle y=l und BO bis B3 set-
zen wir an die Stelle y=7 und beschreiben die Randkurven als kubische Bezierkurven und
zeichnen sie mit Derive ...
We convert the two curves into space by using the coodinates of the control points as x-
and z-coordinates. In AO through A3 we set y - 1 and in BO through B3 we set y-7 and
describe the border curves as cubic Bezier curves and plot them with Derive ...
D
-N-L#66
Hubert Weller: Mathematics and Design
pl5
[AO := [0, 1, 1], A1 := [2, 1, 7], A2 := [4, 1, 0], A3 := [6, 1, 8]]
[BO := [0, 7, 5], B1 := [2, 7, 1], B2 := [4, 7, 7], B3 := [6, 7, 0]]
[p(t) := cub_bez(A0, Al, A2, A3), q(t) := cub_bez(B0, Bl, B2, B3)]
' [AO, Al, A2, A3] '
. [BO, Bl, B2, B3] .
CTABLEC[[pCt)]], t, 0, 1, 0.002))u2
aABLEC[[qCO]], t, 0, 1, 0.002))u2
... und schlieBlich werden die Randpunkte durch Strecken verbunden.
.. and finally we connect the boundary points by segments.
Auf diese Art und Weise lassen sich schone Flachen erzeugen, zB kann man beide Kurven
im Raum an den gleichen Punkten beginnen und enden lassen.
In this way we can create pretty surface: e.g. let both curves begin and end in common
points.
[U0 := [2, 2, 0], U1 := [4, 0, 0], U2 := [6, S, 3], U3 := [S, 0, S] ]
[V0 := [2, 2, 0], VI := [3, S, 2], V2 := [0, 5, 5], V3 := [S, 0, S] ]
' [UO, Ul, U2 , U3] "
. [VO, VI, V2, V3] .
[p_(t) := cub_bez(U0, Ul, U2, 113) , q_(t) := cub_bez(V0, VI, V2, V3) ]
P-(t) + s-(q_Ct) - p_(t))
z
pi 6
Hubert Weller: Mathematics and Design
D-N-L#66
Oder wir konnen ein Dach gestalten.
Or we can design a roof.
6. Gestaltung von Rotationsflachen Designing of Solids of Revolution
Die Kontur der Flache entwerfen wir zunachst mit unserem DGS-Werkzeug:
First of all we create the profile curve of the surface using our DGS-tool:
Diese wird auf die erste Achse gesetzt ([x,y] -> [x,0,y]) und dann im Raum gezeichnet:
The curve is placed on the 1st axis ([x,y] [x,0,y]) and then plotted in space:
Solid of revolution
#14: [WO := [S, 0, 0], W1 := [8, 0, 5], W2 := [1, 0, 1], W3 := [0, 0, 6]]
#15: wOO := cub_bez(W0 , Wl, W2, W3)
T 2 2 1
#16: wOO := L(t - l)-Cl3-t - S-t - 8), 0, 3-t-(6-t - 9-t + 5)J
SchlieBlich wird diese Kurve erst um die z-Achse und dann um die x-Achse gedreht
(Drehwinkel s lauft jeweils von 0 bis 2n).
Finally we rotate this curve around the z-axis (first) and around the x-axis (later), (rota-
tion angle s is running from 0 to 2n).
[(wCO^-COSCs), (wCO^-SINCs), CwCt))^.COSCs), CwCt))^.SINCs)j
Oder wir entwerfen ein Ei, das in der 3D-Graphik dargestellt werden soil. Zunachst ent-
werfen wir mit CABRI einen Querschnitt, mit dem wir zufrieden sind, entnehmen die Ko-
ordinaten der Steuerpunkte der CABRI-Zeichnung und stellen den Querschnitt im 2D-
Fenster dar (rechtes Bild): ( Let's boil a Cubic Bezier Egg )
[EO := [-4, 0], El := [-4, 3], E2 := [4, 5], E3 := [4, 0]]
ei(t) := cub_bez(E0, El, E2, E3)
r 3 2
ei(t) := L — 4 ■ C4 ■ t - 6-t +1), 3-t- (1 - t) ■ (2-t + 3)
Diese Kurve lassen wir im 3D-Fenster um die y-Achse rotieren:
X
pl8
Hubert Weller: Mathematics and Design
D-N-L#66
7. Bezierflachen Bezier Surfaces
Zu guter Letzt erzeugen wir noch Bezierflachen iiber rechteckigen Parametergebieten.
Dabei wird nicht mehr nur eine Punktfolge definiert, in die eine Kurve „gehangt" wird,
sondern wir benutzen ein ganzes Netz aus Punkten, das wir zur Erzeugung einer Flache
nutzen.
Zunachst definieren wir neun Steuerpunkte:
:= [0,
o,
2],
B0 :=
[i,
0,
0],
CO :=
[2,
0,
1]]
:= [0,
1,
0],
Bl :=
[i,
1,
1],
Cl :=
[2,
1,
0]]
:= [0,
2,
1],
B2 :=
[i,
2,
2],
C2 :=
[2,
2,
2]]
Damit konnen wir das Netz der entstehenden Flache zeichnen:
In the last paragraph we create a Bezier
surface above a rectangle parameter
domain. We don 't define a sequence of
points, but a "net of points". Nine con-
trol points are defined and the net can
be plotted:
~ [AO, Al, A2] '
[BO, Bl, B2]
[CO, Cl, C2]
[AO, BO, CO]
[Al, Bl, Cl]
. [A2 , B2 , C2] .
Wir benotigen die Bernsteinpolynome
und definieren unsere Matrix der Steu-
erpunkte unter dem Namen dat, damit
wir auf die einzelnen Punkte in der fol-
genden Formel zuruckgreifen konnen:
We need the Bernstein polynomials and
define a matrix dat of the control points
in order to refer to the single points
applying the respective formula:
~ A0
B0
CO ~
dat :=
Al
Bl
Cl
_ A2
B2
C2 _
k n - k
bernCn, k, p) := C0MB(n, k).p ■[! - p)
Die zugrunde liegende Idee:
Wir erzeugen zeilenweise Bezierkurven (mit dem Parameter t ), die dann spal-
tenweise durch Bernsteinpolynome (mit dem Parameter s) verbunden werden.
The idea is to create Bezier Curves (parameter t) for the rows > which are con-
nected by Bernsteinpolynomials in the columns (parameter s).
2 2
1 bern(2, i, s) ■ I dat ■bern(2, j, t)
i=0 j=0 i + 1 , j + 1
or (0 < s,t < 1)
2 2
I I dat ■bern(2, i, s)-bem(2, j, t)
-i=0 j=0 i + 1, j + 1
D
-N-L#66
Hubert Weller: Mathematics and Design
pi 9
SchlieGlich wird die Flache gezeichnet:
Jetzt kommt die Kronung:
Um zu untersuchen, wie die Form dieser Flache durch Variation der Steuerpunkte veran-
dert wird, benutzen wir Schieberegler und verandern die Flache dynamisch. Wir variieren
zB die 3. Koordinate des mittleren Punktes (Variable z) und ftihren fur z einen Schiebe-
regler ein mit -3 < z < 5 und 32 Intervallen.
We will finish with the highlight:
In order to investigate the influence of the control points on the shape of the surface we
introduce one (or even more) slider bars and vary the surface dynamically. So we vary
for example the 3 rd coordinate of the "center point" B1 and insert a slider bar for z with
-3 <z <5 and 32 intervals.
Bl_ := [1, 1, z]
datZ :=
AO BO CO
A1 Bl_ Cl
AZ BZ CZ
Z Z
I bern(Z, i, s) ■ I datZ -bernfZ, j, t)
i=0 i=0 i + l,j + 1
r 2 2 2 2 ]
L2 ■ t , 2 ■ s , 4 ■ s ■ t ■ z ■ (s - l)-(t - 1) + s ■ (2 ■ t - 2 ■ t + 3) - 2-s-Ot - 4-t + 2) + 3-t - 4-t + 2j
p20
Hubert Weller: Mathematics and Design
D-N-L#66
Der Phantasie und Kreativitat zur Gestaltung von schonen Formen sind keine
Grenzen gesetzt!
There are no limits for phantasy and creativity to design beautiful shapes!
I took Hubert 's closing sentence for serious and introduced two more slider bars for the
1 st and 2 nd coordinate of control point Bl. Josef
References:
[1] Grabinger, Benno, Projekte und Aufgaben zur Analytischen Geometrie, Schroedel,
Hannover, 1999
[2] Kleifeld, Achim, Geometrisches Modellieren mit Bezierkurven verbindet anwen-
dungsbezogen Analysis, Lineare Algebra und Algorithmik,
In: Forster,Henn, Meyer (Hrsg), Materialien fur einen realitatsbezogenen Mathe-
matikunterricht, Band 6 Computeranwendungen S. 61-79, Franzbecker,
Hildesheim, 2000
[3] Meyer, Jorg, Bezierkurven
In: Forster,Henn, Meyer (Hrsg), Materialien fur einen realitatsbezogenen Mathe-
matikunterricht, Band 6 Computeranwendungen S. 44-60, Franzbecker,
Hildesheim, 2000
[4] Bungartz, H.J, Griebel, M., Zenger,C., Einftihrung in die Computergraphik, Vieweg,
Braunschweig, 2002
[5] Lexikon der Mathematik, Band 1, Spektrum Akademischer Verlag, Heidelberg, 2001
Anschrift des Autors:
Dr. Hubert Weller
Vogelsang 10
D-35633 Lahnau
Germany
Earlier DNL-Contributions dealing with Bezier Curves and HP-surfaces:
[6] Gunter Scheu, An Approach to the Bezier Curves, DNL#19 (1955)
[7] Franz Schloglhofer, Bezier Curves in School, DNL#52, (2003)
[8] Benno Grabinger, A Mathematical Potato Chip, DNL#59 (2005)
D
-N-L#66
Mathematics and Design
p21
As I announced earlier here are some screen shots
from Bezier Curves & GeoGebra. Josef.
We can create MACROS (see one step in designing
the first macro from above).
The picture below shows that we can enter the posi-
tion vectors of AO through Y directly - according to the
calculation on page 1 1 . Parameter t is animated by a
slider bar. (See the DERIVE procedure in [7]).
The pre-release version of GeoGebra enables the
user to enter the cubic Bezier curve in its parameter
form (calculated supported by DERIVE). According to
the philosophy of a DGS we can animate this respre-
sentation by draging any point and the respective al-
gebraic representation is given in the „Algebra Win-
dow" simultaneously. (Last screen shot on this page)
7 “ \ ,
File Edit View Options Tools Window Help
You can see the algebraic form of the locus (with parameter s, because t is reserved for the
slider bar) which can be entered in the Edit line. It would be great if CABRI could implement
similar tools to narrow the gap between geometric and algebraic representation forms.
p22
Wolfgang Propper: Step-Functions and Integration
D-N-L#66
Step Functions and Riemann's Concept of Integration
by Wolfgang Propper, Nurnberg, Germany
1. Step Functions 111
^ g ^ g
The expression maps all x e [a .. b[ onto [0 .. 1[. Therefore n- : takes values
b -a
from [0 .. n[ and finally int
x-a
b-a
b -a
is already a step function with integer values from 0
to n-1, while the interval [a .. b[ is subdivided into n subintervals.
To change the height of the steps we multiply with (a so called step factor h =)
b-a
add a and restrict the range to a < x < b and so we get
rst(x, a, b, n) := — — - • int
x-a
b-a
+ a|a<x<b
We call it "right step function" as you will see in a graphical representation in a few min-
g
utes. It takes values a + k in the k th subinterval of [a .. b[, when k runs from 0 to
n
n-1.
Before plotting we define
a 2 nd function, which we
call "left step function as
can be seen at the
screenshot to the right.
g
Its values are a + (k + 1) (with k running from 0 to n-1) and the steps produced
n
hereby show to the left. In G & G we define fl(x) = x first to show the impact of the just
defined functions.
i \
b-a
, ( x-a \ , ^
Done 1
rst\x j a, b, n )
■ int n \+a\n<x<b
n
\ b-a)
lst(x,a f b,n)
b-a
■intL- +1
Done
n
\ b-a j
If we take a = 1 , b = 6 and n = 4
for instance, we define
f2(x) = fl (rst(x,1 ,6,4))
and
f3(x) = fl (lst(x, 1 ,6,4)).
After some cosmetic treatment
(oh, how I wish Nspire knew col-
ors, at least in the PC-version!)
we easily see the meaning of
"right" and "left" steps.
(The figure to the right puts in
mind that right steps could also
be regarded as lower steps and
left steps as upper steps. But
that is only valid for increasing
functions.)
Mi
I got the idea for handlig step functions this way from Philippe Fortin. Thank you, Philippe!
D
-N-L#66
Wolfgang Propper: Step-Functions and Integration
p23
Now we have a tool to transfer the step concept to any function. We just have to change
X 1 o
fl(x). For instance we take f1(x) = 5 — or f1(x) = — x as can be seen in the next two
2 6
figures.
Building a Slide Control
To get some more dynamics into the scene, we build an "integer slider bar".
For short:
Put a point on an arbitrary segment. Then measure the length of the segment and the
distance of that point from the left edge of the segment. Type the expression
int
9— + 1.5
I
(to get an integer slider from 1 to 10) as a text in the G & G screen above
and let it be calculated (with d as distance and I as length). Assign the calculated value of
this construction to a variable n and finally hide the expression togetherwith the two
measurements.
1 ?
Now we return to f1(x) = — x and change f2(x) = f1(rst(x,1,6,n)) and f3(x) =
6
f1(lst(x,1,6,n)) respectively. By moving the slider we see how the figure changes.
(In the left figure the slider construction is still visible.)
p24
Wolfgang Propper: Step-Functions and Integration
D-N-L#66
3. Riemann Sums
Now it would be a great thing if Nspire would have a shade feature to shade the area be-
tween the x-axis and the graph of a function (for instance our f2 and f3 functions). But as
this concept does not yet exist (but I do hope it will come) we have to stress our imagina-
tion when we want to calculate the area between the x-axis and our step functions.
g
It is obvious that the width of the steps is . And the height of the steps is
n
g g
f1(a + k ) for the right steps and f1(a + (k + 1) ) for the left steps with k running
n n
from 0 to n-1 .
So we define the two func-
tions rsu(a,b,m) and
lsu(a,b,m) (standing for
right sum and left sum re-
spectively) as can be seen
at the right.
It would be very nice to type
rsu(1,6,n) for instance as a
text in our G & G screen
and let it be calculated.
But now comes another bad
news:
The calculate concept of
Nspire does not work with
self-defined functions like in
this example. (But I also
here hope the "not" is a "not
yet".)
To get the areas despite of the missing calculate feature in a vivid manner, we use the in-
tegrate tool in G & G. I know, this is a point where, as a German proverb says, "the cat
bites herself into her tail". But if one can live with that deficiency, it works perfectly.
We first integrate function
f3(x) from 1 to 6 and make
the shade "lightgrey". Then
we integrate f2(x) over the
same range.
Finally the integrals (which, in
this case are areas) are as-
signed to variables lar (for left
area) and rar (for right area).
D-N-L#66
Wolfgang Propper: Step-Functions and Integration
p25
Now one again can "play" with the slider and see not only the graphical effect but also
how it looks numerically.
n=i3
lar=19.2
rar=16.5
10.5
x
As you can see one can change within the G&G-application the function, the number of
maximum possible steps (replace 9 with 19 in the formula for n), the boundaries ...
4. Riemann's Concept of Integration
Looking at the areas we see that the lars are decreasing and the rars are increasing
when n is growing. To make this more intuitive we open a L & S screen. In columns A, B
and C we initialize an automated data capture of variables n, lar and rar. Then we return
to our G & G screen and pull the slider gently from n = 1 to n = 10. The three columns
are filled with data as we see in the next figure. For plotting reasons we assign list names
lx, lyl and Iy2 to columns A through C. And finally (and that is just for comparison rea-
son) we let the sequence of the Isu function (could as well be the rsu function) be calcu-
lated in column D. And we see that the lar values are equal to the values of the Isu func-
tion. (And so it would be with rar and rsu.)
(To be honest, the screen to
the right does not always re-
sult so nicely. Normally the
automated data capture
catches some triples
(n, lar, rar) several times
and can also ignore some
triples. So one normally has
to make several attempts to
get all values of n. Deleting
duplicate triples is not a
problem then. If that is all
OK one can complete col-
umn D.)
A |lx
B |iyi
c|ly 2
D
e||
♦ =capture(n # 1!
=capture(lar
=capture(rar
=seq(lsu(1 J 6 J k) # fc 1 -il 0 )
| 1
30
.333333
30.
2
2
20.1042
5.52033
20.1042
3
3
17.1914
7.46914
17.1914
4
4
15.3073
3.51563
15.3073
5
5
15.
9.16667
15.
6
6
14.4715
9.61034
14.4715
7
7
14.0986
9.93197
14.0936
3
3
13.3216
10.1753
13.3216
9
9
13.6077
10.3669
13.6077
10
10
13.4375
10.5203
13.4375
IV
l|
V
B | lyl \=capture
(lam)
p26
W.Propper: Step-Functions and Integration
D-N-L#66
And now finally we open an-
other G & G screen to make
scatter plots of the lists lyl
against lx and Iy2 against lx.
Function f4(x) is defined as
limit(lsu(1,6,m),m,co).
We can see that the se-
quence of the lars and rars
(or the Isus and rsus) seem
to converge to one value
which is then called the
(definite) integral of fl(x)
between the bounds 1 and
6 .
References:
[1] Josef Bohm & Wolfgang Propper, Einfuhrung des Integralbegriffs mit dem TI-92,
bk teachware 1999
[2] J. Bohm, W. Propper, Exploring Integration with the TI-89/92/92+,
bk teachware 2000
Remarks:
1 . Please have mercy with my English as I am not a native English speaker.
2. The screen shots and the attached Tl-Nspire file are based on the "old" Nspire CAS
(Build 1.0.500), because I did not get the new version running properly.
3. Do not try to run this example on an "old" handheld. Its performance is much too
weak!
Many times in earlier DNLs I was tempted to transfer DERIVE-activities on the screen of a handheld
device. This time it is the other way round. Phillipe's “stepwise” demonstration of the Riemann sums
caught my interest - maybe caused by the fact, that Wolfgang and I were very busy presenting vari-
ous forms of numerical integration and introducing the fundamental theorem (see references above)
some time ago. I wondered if the sum-functions would work in Derive and if they were able to apply
the slider bar for the shaded areas. Here are my results. Josef.
rst(a, b, n, >0 :=
If a < x < b
#1: (b - a)/n ■ FLOOR (n ■ (x - a)/(b - a)) + a
lst(a, b, n, >0 :=
If a < x < b
#2: (b - a)/n ■ FLOOR (n ■ (x - a)/(b - a) + 1) + a
#3: flOO := x
#4: fl(rst(l, 6, 4))
#5: flClstCl, 6, 4))
D
-N-L#66
Wolfgang Propper: Step-Functions and Integration
p27
2
X
# 6 :
f 20 <) := -
6
# 7 :
f 2 (rsta,
6 ,
12 ))
#S:
f 2 Clsta,
6 ,
12 ))
6
5
4
3
2
1
12 3 4 5 6
#13:
#14:
#15:
#16:
# 17 :
b - a
rsu(a, b, m) :=
m
b - a
lsu(a, b, m) :=
m
sums := TABLE([ rsu(l , 6
sums-ufl, 2]
sums-utl, 3]
m - 1 f
I f 2
k =0 l
m - 1 f
I fZ
k =0 l
m) , lsu(l, 6
k-(b - a) ^
m ^
(k + l)-(b - a) "
m j
, m)], m, 1, 50)
Mim rsu(l, 6 , m) ,
lim lsu(l, 6 , m)l =
215
215 "
i
Lm-wo
m-wo J
_
IS
IS _
p28
Maren van Kessel: Morphing with DERIVE
D-N-L#66
20 ■
18
16
14
■± 5 —
10
8
6
■
4
2
left sums
right sums
10 15 20 25 30 35 40 45 50
Morphing with DERIVE
I met Maren van Kessel, a colleague of Hubert Weller. She showed a nice "Morphing" follow-
ing an idea from Hubert: "Make a Parabola from a Straight Line"
I'd like to remind you that we (David Sjostrand and I) presented in DNL#37, 2000, "A Metamorphosis",
where we performed a similar morphing with Excel (and its slider bar) and with the TI-92 (executing a
program). In DNL#39 two Lower Austrian students presented their metamorphoses on the TI-92: "Bird
to Snail" and "Caterpillar to Butterfly". One of them mentioned in 2000: "Make an Elephant out of a
Moscito". The DERIVE slider bar inspires students to morphings on the PC even in 2007.
It is a nice occurrence that in DNL#37 G P Speck contributed an article and he is the author of the
next one, too. Josef
p34
G P Speck: Challenger Matrix Problems
D-N-L#66
Now the aforementioned recipe for solving ANY Challenger problem consists of placing in the Au-
thor line in sequence the symbol si= (i=l,...,7), unless otherwise instructed, for each of the si thru
s7 given below, with Enter being pressed after each si= is placed in the Author line.
(1) The recipe for solving ANY Challenger problem consists of placing in
the Author line in sequence the symbol si' = , unless otherwise instructed,
for each of si through s7 with Enter being pressed after each entry of si'=
(2) You have placed the symbol sl= in the Author line and Entered it
to execute the following line on the letters a through 1:
[a :=, b :=, c :=, d :=, e :=, f :=, g :=, h :=, i :=, j :=, k :=, 1 : = ]
[a :=, b :=, c :=, d :=, e :=, f :=, g :=, h :=, i :=, j :=, k :=, 1 :=]
#34 : si :=
(3) To duplicate a given newspaper Challenger matrix problem into a
Derive matrix where the newspaper matrix has one of its 4 given number
entries in the (2 , p) position and a second of its 4 given numbers in
the (3,q) position, place mm:=fpq in the Author line and press Enter.
Next place mm= in the Author line and press Enter.
Then double click the resulting mm=[6xB matrix] and in the Author line,
replace mm= with mm:= , and replace each tp appearing with its
corresponding number from the newspaper Challenger problem. Finally,
press Enter to display the replacement mm:=[new newspaper 6xB matrix].
D
-N-L#66
G P Speck: Challenger Matrix Problems
p35
You
have placed
the symbol s2=
in
the Author
line
and
Entered ft
to
determine the vector wQ and
1 number c_i
z needed
subsequently ,
wO := [a,
b, c,
d,
e, f, 3
■ h,
j]
c_
.c :
= 1
#35: s2 : =
IF (mm
> 0 a mm
> 0, (w 0 := [a
L, 1
b, c, d,
e,
f, 9,
, i' .
j]) A c_c := 2)
2,
,1 3
,4
IF (mm
> 0 a mm
> 0, (wO := [a
L. 1
b, c, d,
e,
f, 9i
, i .
j]) a c_c := 2)
2
,2 3
,4
w0=
c_c=
-
. wO .
i
c_c _
(1) Place the symbol s4 in the Author line and then click =
#36: s3 : =
(2) Next double click on the result of s4 and replace it after modifying ft
by replacing each a with , and each = with := and then pressing Enter,
(3) Finally, place the symbol s5 in the Author line and then click =.
#37:
s4
:= SOLVE (^vl ,
vl .
2
vl , vl , v2 , v2 , v2 , v2 ,
3 4 1 2 3 4
#38 :
s5
II
1— 1
~n
n
1
n
II
H
ml(f
, k, 1) := mm, ml(h, k, 1) := mm)
#39:
s6
:= NumSol(l)
#40:
s7
:= [All Solutions =
, All Sol (q - 1)]
An application of the recipe above is given below for solving the Challenger problem which is repre-
sented by the matrix on the right:
ifcl
>3
A
r
3.
hi
%
A
—
n
IT
v\ Ab
— —*
0 0 0 0 17 "
a b 6 c 33
d 1 e f 13
g h f 2 16
1 j k 1 13
25 16 21 13 14
We follow the instructions si thru s7 and start with simplifying sl= . We can read how to proceed (I
don't copy the screen) and do according to intruction (3) given in si:
#43: mm := f32
p36
G P Speck: Challenger Matrix Problems
D-N-L#66
D-N-L#66
G P Speck: Challenger Matrix Problems
p37
The next Challenger problem (which has 249 solutions!) is given for solution by the reader using the
RECIPE given above.
0 20
c 20
f 20
i 20
g
j k 1 5 20
20 20 20 20 20
Searching the web for Challenger problems I found the website of King fea-
tures www . Kingf eatures . com/index . htm and a Demo Challenger.
Try to solve it!
INDEX
PUZZLES & GAMES
EDITORIAL CARTOONS
PUZZLES A GAMES
WEEKLY SERVICE
/lJlflflAjritfm* THE IMrefiNHIONAL
CliSItCfiSG I ® CIWSSrtWilBEHCAMe
0 ]ft¥CT 1 CHS:
FiM Kjijrn* wilih a number, iirtC
* Hi j u!orlnl y&itrtt WiSuld add «y rotiJscn rigTil. &
* Vertical sqLrtlii slrauM wl to :pi?(s bwiom,
* DiigwiAI-jqUfl'M irirwighcrfllcrshfejld*^ Ifl
local ill arij fiqNL
THEBE W>f tn .«3RE
tms one souuiiw.
Today's Chslietfige
Tijcie 0 MinuCtt
49 Seconds
Yo-jr Working
' Timw Mtnules
Sectmtii
4
11
1
5 j
^ 4
23
1 3
Wl 9 1
IT
MO
15
j & ;
18
(DlflW Khfl Pwflgrgs SyrviiMi*, i(% WArttf flfiha }«*«od.
G P Speck is from Wanganui. Some years ago my wife and I had the occasion to visit New Zealand
and we had a boat trip on the Wanganui River and travelled along it to the City of Wanganui. There is
a wonderful museum containing a rich Maori Art collection. The pictures show the Wanganui River,
pittoresque village Jerusalem on the River and the famous Bridge to Nowhere. Josef
p38
Derive - and CAS-TI-User Forum
D-N-L#66
Johann Wiesenbauer, Vienna
Hi,
There seems to be some kind of misunderstanding. When discussing general powers A n here , we are
not talking about general matrices A , but about general exponents n.
No mathematician (and no CAS for that matter) will ever be able to compute A n and exp(A) for an
arbitrary given matrix A and for a general n (exactly, mind you!), for the simple reason that we usually
cannot determine the exact roots of the characteristic polynomial of A if its degree is greater than 4.
The computation of those roots, also called eigenvalues of A, is inevitable though when computing A n
for an unspecified nonnegative integer n.
Cheers,
Johann
R. Schorn's challenge (from DNL #13, p.3) revisited
Aleksey Tetyorko
Hi!
Better later then never - try my versions of MAXTERM function. I've run it in 3.11, 4.11, and 5.06
versions of Derive. Annotations give the running times - my computer is old (Pentium, WIN95, 16M
RAM etc).
But the function is not so bad. Sorry, I do not know, how I could it compute 13 years ago.
MAXTERM 5 _AUX(u , x, m_, n_, O := ITERATE (I F(n_ < DIMENSION (u) , IF(m_ > m_ , |Tm_ , lim u 1, n_ +
2 1 LL 2 x-»l n_ + ij
1, u 1, r r m , lim u 1, n_ + 1, cl), IF(m_ > m_ , I" m_ , n_, u 1, |"m_ , n_, cl)), [m_, n_,
n_J LL 1 x->l n_ + ij J 2 1 L 2 n_J L 1 J
c ] , IT lim u , lim u 1, 2, u 1, DIMENSIONCu) - 1)
LLx->l 1 x->l 2 J ij
ri
MAXTERM5 (u , n, x) := MAXTERM5_AUX(TERMS(EXPAND(u ), x) , x)
3 2
MAXTERM 5 (4 ■ x + 3-x + 2-x + 1, 100, x)
398243667203410623024848236684603963137619260356309333266022065462985155939604195463780443664821745, 301,
2001
39824 366720341 062302484823668460396313761926035630933326602206546298515 5939604195463780443664821745 -x J
Simplification time 25.0 sec with v. 3.1 1
Simplification time 21 .5 sec. with v. 4.1 1
Simplification time 37.0 sec with v. 5.06
Simplification time 2.23 sec with v. 6.10
MAXTERM5 0 + 1 , 2, x) = [2, 3, 2-x ]
Aleksey
D
-N-L#66
Derive - and CAS-TI-User Forum
p39
Johann Wiesenbauer
Hello Aleksey,
Okay, you have proven that it is possible to get the desired result within a few seconds in those ancient
versions of Derive. I'm not sure though if there are people who will find this piece of information
useful. As for me, I have to confess that I’m overglad that I’m no longer forced to deal the unreadable
programs of that time. In fact, there is even one program of mine (the function parts (n) in Com-
binatorialFunctions .mth) which I have never translated into the new programming code of
Derive 5 (or more recent), because I simply couldn't decypher it anymore.
Anyway, if you want to know how Richard Schom computed the coefficient at issue then (without the
corresponding power of x), you could look it up here
http : //www . austromath . at/ dug/ dnlQl . php
in the DNL quoted in subject (though on page 12).
Cheers,
Johann
Jim FitzSimons
Johann, your old parts still works and is a lot faster than my parts.
My parts is included in CommbinatorialFunctions .mth.
MAXTERMSO + 1, 2, x) = [2, 3, 2-x]
PARTS_AUX(n , m) :=
If n < 2«m
1
1 + I(PARTS_AUX(n - k_, k_) , k_, m, FLOOR (n, 2))
PARTS J(n) :=
If n < 0
0
PARTS_AUX(n , 1)
PARTSJ (SO) = 204226
needs 7.72 sec
PARTS (SO)
204226
Your parts is so fast, it can not be measured (0.016 sec.).
Jim,
Johann Wiesenbauer
Jim,
Thank you very much for your kind comment, but the credit for the outstanding performance of my
parts (n) goes mostly to Ramanujan and Rademacher, who found the underlying formula. I took me
some days then just to understand how it works, but I have never understood how someone can come
up with such an amazing formula.
Cheers,
Johann
p40
Derive- and CAS-TI-User Forum
D-N-L#66
Aleksey Tetvorko
Hi!
Mutually recursive functions and Lisp are my first love and my hobby, and I treat the
Schorn's problem as the programmer's puzzle.
The MAXTERM5 function can be rewritten in imperative (while-loop) manner, but for
what?! Derive as one of Lisp (functional) programming systems has the tail recursion
elimination etc. But... the "while-loop" function follows.
MAXTERM5_AU>LL(u , x, m_, n_, c_, n_, njiax)
Prog
m_ := [LIMGul. x, 1 ), LIM(l 42, x, 1)]
n_ := 2
c_ := u.i.l
n := 0
n_max := DIMENSION(u) - 1
Loop
If n > n_max exit
If n_ < DIMENSION(u)
#1:
If m_i 2 > m_il
Prog
m_ := [m_.i.2 ,
LIHCuiCn_ + 1),
1 1
1
c_ := 14 n_
n_ : + 1
Prog
m_ := ,
LIHCuiCn_ + 1),
1 1
1
n_ :+ 1
If m_i 2 > m_il
Prog
m_ := m_i 2
c_ := u.i.n_
m_ := m_il
n : + 1
[m_, n_, c_]
#2: MAXTERM5L(u, n, x) := MAXTERM5_AUX_L (TERMS (EXP AND(u ), x), x)
#3: MAXTERM5L(x + 1, 2, x) = [2, 3, 2-x]
3 2
V1AXTERM5L(4.x + 3-x + 2-x + 1, 1QQ , x)
#5: L39S243667203410623024S4E236684603963137619260356309333266022065462985155939604195463780443664E21745, 301,
200 ]
39S24 366720341 0623024848236684603963137619 26035630933326602206546298515 59396041954637S044 3664821745.x J
This version was obtained from the recursive one by the straightforward expansion of
ITERATE using the LOOP construction. One can improve the readability by some
rearranging.
Aleksey
PS.
iter(u, x, x0, n, x_, n_)
Prog
x_ := xO
n_ := 0
Loop
If n_ > n exit
x_ := LIM(u , x , x_)
n_ : + 1
x_
iter(x + 1, x, 0, 20) = 20
D
-N-L#66
Derive- and CAS-TI-User Forum
p41
iters(u, x, xO, n, x_, n_, r_) :=
Prog
x_ := xO
r_ := [x_]
n_ := 0
Loop
If n_ > n exit
x_ := LIM(u , x , x_)
r_ := APPENDO_, [x_])
n_ : + 1
r_
iters(x + 1 , x , 0 , 20)
[0, 1, 2, 3, 4, 5, 6, 7, S, 9, 10, 11, 12, 13, 14, 13, 16, 17, IS, 19, 20]
Strange Derivatives on the Tl-Device??
Hubert Langlotz
Hello Josef, hello Rainer (Geyer),
one of my colleagues came across the following problem and I couldn't give any support. In my opin-
ion it should be a bug. Do you have any advice?
Hubert
The problem is: Find the n-th derivative of / (x) = VxTI .
nca- 1 ) _if!d
The conjecture is: f n (x) = (-l) w_1 1=1 ^ (x + 1) 2 .
Having stored this expression as g(n,x), one obtains
the following correct results:
g ( n , x ) gives a surprising output.
Saving the product only as t (n) one faces the
same problem:
i gebr afca r^fotherlprgri I o]c lean Up! 1
■ g(4 ? x)
-15
16 (x + l) 7 '' 2
■ gC5 ? x)
1G5
32 (x + l) 9 ^ 2
■ g(& ? x)
-945
64 (x + l) llx2
BHMM 1
UNTEG FiHD AUTO
FUHC 3/30 1
[” J2}f| i gebr alca rdotherlprgn I ofc 1 eaiT Up! 1
■ g(n ? x)
■(n - 3/2) ! (-l) n ,1/2 -n
2 ■( - 1/2) ! Cx+1J
g<n J .x> 1
INTEG
RHP flUTD FUHC i/30 I
i gebr afca r^fotherlprgri I Cifc lean Up! 1
■ t(6)
945
■t(n)
2 n (n - 3x2)!
2 ■( - 1/2) !
2 n (n - 3/2) ! ,
32 (9^2)!
2 ■( " 1x2) ! |n " 6
(-1/2)!
2 A n*<n-3/2>t/<2*0
!/2>*>ln = 6B
IIHTE 5 F iHE fl U T D F UHC 3^30
p42
Derive- and CAS-TI-User Forum
D-N-L#66
This is my attempt of an explanation, Josef.
Dear Hubert (and Rainer and colleague, of course),
Derive delivers the following:
n - 1
#1: n - 1
n (2-1 - 1)
i=l
n - —
v 2;
Jtt
6-1
#2:
6
v 2;
This is a „beautiful“ example where we need proceeding manually because „the calculator - or the
implemented program - is failing 66 .
We prove the conjecture by induction:
1. step:
n - 1
/”M= (-i)
m*- 1 )
2/i-l
n - 1 i = 1
2 "
(x + 1)
2. step:
3. step:
J^[ (2/ 1) 2 ( /? +1 ) —1
f"\x) = (-1)" 0+1) 2
2
n-\
n^'-D 2 „_,
(/ w w)'=(-ir'j=!— — ( — — )-o+i) !
2n-\
2"
Answer: The general formula for the //-the derivative of x k is given by
sin
u -.k / k \{n) _
dx’
-x k ={x k ) (n
y n j
n!-x k ~ n
I transmit this formula on the V200 and calculate the 6th derivative. As the “inner derivative” is 1 , we
have no conflicts with the chain rule replacing x with x+1 .
f » i gebrata fclotherlprgn I die 1 ean Up! 1
■ nPr(k ? nV(x + l) k
n * gC k , n ? x}
Done
■ g(lx2, 6, x)
-945
64 (x + 1)
11x2
■ g( 1x2 ? n , x)
( 1x2) ! (x+1) 1/2 n
( 1/2 - n) !
sKl/2,n,x>
CRYPTO RflD flUTD
FUNC 5/50
fFiT^OY f** i" f::t y y fe
| ^ j - — |fl 1 gebr a |c a 1 c |other |Pr gn I Q |C 1 ean
1 g£ 1 x2 ? n , x}
1 1^2 ? n , >0 | n = 6
1 - 2n
( Jn (x + 1) 2
2 ■( 1x2 - it) !
^[prgpi I u|c 1 ean UrT I
( ! (x + 1 J
( 1x2 - n) !
-945
64 (x + 1)
11x2
- + h(n)
Done
■■■<a-2n>/2>/<2tta/2-fO*>-frlKn>
■h<6)
ft
ft
2 ■( - 11x2)! (x + 1)
ft
11x2
2 ■ a (x + 1)
ft
2 ■ a (x + 1)
11x2
2 ■ a (x + 1)
11x2
, _ -32 -Jn
11x2 I a 945
■■■*Kx+l> A <ll/2>> I a=~32 J<n>/945l
CRYPTO RflD AUTO FUNC H/50
ft
11x2
2 ■ a (x + 1)
Jn |
2 ■ a (x + 1) 1 1/2
2 ■ a (x + 1)
11x2
-32 -ft
945
-945
64 (x + 1)
11x2
■■■tt<x+l> A <ll/2>>la=-32JXn>/945
CRYPTO RflD AUTO FUNC B/50
D
-N-L#66
Derive- and CAS-TI-User Forum
p43
The reason for the "bug" - which is no bug at all - is the fact that the V200 and with it the recent ver-
sion of the NSpire are not as "clever" as Derive and they both don't know how to handle faculties of
fractions. There is the GAMMA-function in the background and with it the knowledge that
(1/2)! = vn/2. This should be implemented in further versions of the handheld TIs.
k - n
#1: g(k, n, x) := PERM(k, n) ■ (x + 1)
f 1 ^ 945
g — , 6 =
# 2 : L 2 J 11/2
64- O + 1)
(1 - 2 ■ n)/2
If we import the knowledge acquired by support of DERIVE into the handheld devices we can imme-
diately see the equivalence of the results.
By the way it is very instructive to perform the calculation of Hubert's product in Derive - STEP-
WISE.
# 6 :
(1 - 3-n)/3
O + 1)
#7:
25O4902400
29/3
59049 ■ (x + 1)
#S:
rn
L B j
r 1 ^
10 !
L 3 J
I'FiTUriT FIT Y FjT Y FHt Y FE Y FbT Y 'I
I t i-— |fl 1 gebra |Ca 1 c lother |Pr gm 1 0 |C 1 ean Up |
-945 ,
64(x+ l) 11 ' 2
■ g( 1^3 7 n ? x)
(1x3) ! (x + l) 1/3-n
(1X3 - n)!
■g(1^3, 10 ? x)
-2504902400
59049 (x + 1) 29/3
9<1/3,10,x>I
CRYPTO RAD AUTO
FUNC 10/30
25O4902400
# 9 :
59049
D
-N-L#66
Surfaces from the Newspaper
p44
Surface#!: x 2 y + y i z + z i x + lz 2 + 5z = 0
Surface #1 in DERIVE presented applying functions from polycontour . mth (DNL#63) and
IMPLICIT_Peter . mth (DNL#64).
3 3 3 2
ImplicitPtsO «y + y -z + z «x + 7-z + 3-z = 0, -4, 4, 0.2)
3 3 3 2
VECTOR (Contou rPts_XY (x -y + y -z + z -x + 7-z + 3-z = 0, z_, -4, 4, -4, 4, 0.2, 0.2), z_, -4, 4, 0.2)
3 3 3 2
VECTOR(ContourDots_XY(x ■y+y -z+z -x + 7-z + 5 ■ z , 1), 1, -3, 3, 0.3)
3 3 3 2
VECTOR (Contour Pts_2D(x ■y + y «z + z «x + 7-z + 5 ■ z , 1), 1, -3, 3)
Surface #1 in Autograph
Surface #1 in MuPad
Surface #1 in DPGraph